/**
 * "Visual Paradigm: DO NOT MODIFY THIS FILE!"
 * 
 * This is an automatic generated file. It will be regenerated every time 
 * you generate persistence class.
 * 
 * Modifying its content may cause the program not work, or your work may lost.
 */

/**
 * Licensee: DuKe TeAm
 * License Type: Purchased
 */
package orm;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

import com.google.gwt.core.ext.typeinfo.ParseException;

/**
 * Tabla que registra las atenciones de los pacientes asociadas a las prestaciones.
 */
public class Atencion {
	public Atencion() {
	}
	
	private void this_setOwner(Object owner, int key) {
		if (key == orm.ORMConstants.KEY_ATENCION_PACIENTEIDPACIENTE) {
			this.PacienteidPaciente = (orm.Paciente) owner;
		}
		
		else if (key == orm.ORMConstants.KEY_ATENCION_PRESTACIONIDPRESTACION) {
			this.PrestacionidPrestacion = (orm.Prestacion) owner;
		}
	}
	
	org.orm.util.ORMAdapter _ormAdapter = new org.orm.util.AbstractORMAdapter() {
		public void setOwner(Object owner, int key) {
			this_setOwner(owner, key);
		}
		
	};
	
	private int idAtencion;
	
	private java.util.Date Fecha;
	
	private String Diagnostico;
	
	private orm.Paciente PacienteidPaciente;
	
	private orm.Prestacion PrestacionidPrestacion;
	
	private void setIdAtencion(int value) {
		this.idAtencion = value;
	}
	
	public int getIdAtencion() {
		return idAtencion;
	}
	
	public int getORMID() {
		return getIdAtencion();
	}
	
	/**
	 * Fecha de registro de atencion
	 */
	public void setFecha(String fecha) {
		
	    DateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd");

	    Date convertedDate;
		try {
			convertedDate = dateFormat.parse(fecha);
			this.Fecha =convertedDate;
		} catch (java.text.ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
		
			
	}
	
	/**
	 * Fecha de registro de atencion
	 */
	public java.util.Date getFecha() {
		return Fecha;
	}
	
	/**
	 * Descripcion con el diagnostico por el cual se presenta el paciente
	 */
	public void setDiagnostico(String value) {
		this.Diagnostico = value;
	}
	
	/**
	 * Descripcion con el diagnostico por el cual se presenta el paciente
	 */
	public String getDiagnostico() {
		return Diagnostico;
	}
	
	public void setPacienteidPaciente(orm.Paciente value) {
		if (PacienteidPaciente != null) {
			PacienteidPaciente.atencion.remove(this);
		}
		if (value != null) {
			value.atencion.add(this);
		}
	}
	
	public orm.Paciente getPacienteidPaciente() {
		return PacienteidPaciente;
	}
	
	/**
	 * This method is for internal use only.
	 */
	public void setORM_PacienteidPaciente(orm.Paciente value) {
		this.PacienteidPaciente = value;
	}
	
	private orm.Paciente getORM_PacienteidPaciente() {
		return PacienteidPaciente;
	}
	
	public void setPrestacionidPrestacion(orm.Prestacion value) {
		if (this.PrestacionidPrestacion != value) {
			orm.Prestacion lprestacionidPrestacion = this.PrestacionidPrestacion;
			this.PrestacionidPrestacion = value;
			if (value != null) {
				PrestacionidPrestacion.setAtencion(this);
			}
			else {
				lprestacionidPrestacion.setAtencion(null);
			}
		}
	}
	
	public orm.Prestacion getPrestacionidPrestacion() {
		return PrestacionidPrestacion;
	}
	
	public String toString() {
		return String.valueOf(getIdAtencion());
	}
	
}
